//
//  ArrayDataSource.h
//  27-ArrayDataSource
//
//  Created by mafeng on 16/8/19.
//  Copyright © 2016年 mafeng. All rights reserved.
//

#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
// 重定义 block
// 无返回值
// 参数1: 自定义cell/ 系统cell
// 参数2: model类
typedef void (^ __nonnull configCell)(__kindof UITableViewCell *cell, id model);
// 该类要签订datasource协议
@interface ArrayDataSource : NSObject<UITableViewDataSource>
/**
 *  数据源的初始化方法
 *
 *  @param reuse     重用池标识
 *  @param array     数组, 数据源 -- model
 *  @param cofigCell 处理cell的block -- callback回调
 *
 *  @return
 */
- (instancetype)initWithTableCellReuse:(NSString *)reuse arrayDataSource:(NSArray *)array configCell:(configCell)cofigCell;

+ (instancetype)arrayDataSourceWithTableCellReuse:(NSString *)reuse arrayDataSource:(NSArray *)array configCell:(configCell)cofigCell;
@end
NS_ASSUME_NONNULL_END